Update README with newest features / architecture - #36
Conversation
Signed-off-by: Luca Della Vedova <lucadv@intrinsic.ai>
|
|
||
| ## Usage | ||
| Packages need to have a `package.xml` in addition to `Cargo.toml`. You should see such packages classified as `ament_cargo` in the output of `colcon list`. If they are classified as `ros.ament_cargo` instead, the `colcon-ros-cargo` extension has not been found by `colcon`. Make sure that you have built and loaded (`source install/setup.bash`) the extension. | ||
| Packages need to have a `package.xml` in addition to `Cargo.toml`. Make sure that you have built and loaded (`source install/setup.bash`) the extension. |
There was a problem hiding this comment.
Can you elaborate on this section?
Make sure that you have built and loaded (`source install/setup.bash`) the extension.
As a newcomer to the tool, from the usage described in: https://github.com/ros2-rust/ros2_rust?tab=readme-ov-file#sounds-great-how-can-i-try-this-out
It seems like we source the workspace of Rust crates after we build the ROS workspace. Is my understanding incorrect?
I would expect that we don't have to source anything from colcon-ros-cargo since it's a colcon extension
There was a problem hiding this comment.
It's perhaps a bit redundant and more of a general direction about how to install colcon extensions, since for now there are no debian packages this can only be pip installed (with the scary --break-system-packages flag) or put in a colcon workspace and colcon build.
I gave it a quick try and indeed if I have a workspace with this colcon extension and a package that would be built by it (something that is identified as a ros.ament_cargo package named example) the following seem to be true:
- Doing
colcon build --packages-up-to exampledoesn't build this colcon extension, which makes sense since it's not an explicit dependency I guess. - Doing
colcon build --packages-select colcon-ros-cargo, followed bycolcon build --package-select exampledoes not correctly identify the package, and colcon still reports that it doesn't know how to handle aros.ament_cargopackage. - Doing a
colcon build --packages-select colcon-ros-cargo, followed by asource install/setup.bash, followed by acolcon build --packages-select examplecorrectly works, suggesting that indeed colcon extensions need to be built and sourced before they can be used.
The README is outdated and can be a bit confusing.
Specifically, the part about
ament_cargovsros.ament_cargois just flat out wrong since we started reusing colcon's package identification in #32.Also testing is supported as of #19